package com.kingdee.eas.scm.sm.pur;

import com.kingdee.bos.BOSException;
//import com.kingdee.bos.metadata.*;
import com.kingdee.bos.framework.*;
import com.kingdee.bos.util.*;
import com.kingdee.bos.Context;

import java.lang.String;
import com.kingdee.eas.common.EASBizException;
import com.kingdee.bos.metadata.entity.EntityViewInfo;
import com.kingdee.bos.dao.IObjectPK;
import java.math.BigDecimal;
import java.util.Map;
import java.util.Date;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.eas.framework.CoreBaseCollection;
import com.kingdee.eas.scm.common.ISCMBillBase;
import com.kingdee.bos.util.*;
import com.kingdee.bos.BOSException;
import com.kingdee.bos.Context;
import com.kingdee.bos.dao.IObjectValue;
import com.kingdee.eas.framework.CoreBaseInfo;
import com.kingdee.jdbc.rowset.IRowSet;
import com.kingdee.bos.framework.*;
import com.kingdee.bos.util.BOSUuid;

public interface IPurOrder extends ISCMBillBase
{
    public void revoke(IObjectPK[] pks, IObjectValue[] reasonCodes) throws BOSException, EASBizException;
    public void revoke(IObjectPK[] pks, String[] reasonCodes) throws BOSException, EASBizException;
    public void revoke(IObjectPK pk, IObjectValue reasonCode) throws BOSException, EASBizException;
    public void revoke(IObjectPK pk, String reasonCode) throws BOSException, EASBizException;
    public void audit(IObjectPK pk) throws BOSException, EASBizException;
    public void audit(IObjectPK[] pks) throws BOSException, EASBizException;
    public PurOrderInfo getPurOrderInfo(IObjectPK pk) throws BOSException, EASBizException;
    public PurOrderInfo getPurOrderInfo(IObjectPK pk, SelectorItemCollection selector) throws BOSException, EASBizException;
    public PurOrderInfo getPurOrderInfo(String oql) throws BOSException, EASBizException;
    public PurOrderCollection getPurOrderCollection() throws BOSException;
    public PurOrderCollection getPurOrderCollection(EntityViewInfo view) throws BOSException;
    public PurOrderCollection getPurOrderCollection(String oql) throws BOSException;
    public void checkAlert(IObjectPK pk) throws BOSException, EASBizException;
    public void alert(IObjectPK pk, IObjectValue model) throws BOSException, EASBizException;
    public BigDecimal isNeedDeliveryAdvanceAlert(BOSUuid pk, BigDecimal advanceDay) throws BOSException, EASBizException;
    public BigDecimal isNeedDeliveryDeferAlert(BOSUuid pk, BigDecimal deferDay) throws BOSException, EASBizException;
    public void canRevoke(IObjectPK pk) throws BOSException, EASBizException;
    public void canRevoke(IObjectPK[] pks) throws BOSException, EASBizException;
    public void alter(IObjectPK pk, PurOrderInfo model) throws BOSException, EASBizException;
    public void agreeAlter(IObjectPK pk) throws BOSException, EASBizException;
    public void disaccordAlter(IObjectPK pk) throws BOSException, EASBizException;
    public void unAudit(IObjectPK[] pks) throws BOSException, EASBizException;
    public void unAudit(IObjectPK pk) throws BOSException, EASBizException;
    public Map batchCheckForSumbit(IObjectPK[] entries) throws BOSException, EASBizException;
    public IRowSet getEntryForSupplierPrice(String materialID, String purchaseOrgUnitID, String unitID, Date bizDate) throws BOSException;
    public IRowSet getEntryForApproved(String materialID, String purChaseOrgID) throws BOSException;
    public boolean entryHasDest(Map param) throws BOSException, EASBizException;
    public void sendOrd(PurOrderInfo model) throws BOSException;
    public void confirmation(PurOrderInfo model) throws BOSException;
    public void unConfirmation(PurOrderInfo model) throws BOSException;
}